在搜了一堆解釋, 還是非常混淆!
在測試、體會之後, 覺得應該這樣說會比較好!
野人獻曝, 希望幫助到您!
要點 | working directory | working tree |
---|---|---|
定義 | 指當前的專案內容 | git目前使用的專案副本內容 |
用途 | 實際儲存的區域 | 內容展開、編修等操作的區域 |
位置 | 實體上, 一般指專案資料夾 | 邏輯上, 位置與 working diretory 相同 |
內容(時點) | 當前、最新的專案內容 | 是某時點的專案內容(比對的基礎) |
實虛 | 是實體、真正存在 | 也是實體、真正存在, 但在Git管理下的副本 |
所以,
- 以資料夾位置來說, 並不算錯, 但位置不是關鍵
- 不同時點的專案內容, 才是重點, 也更容易分出差異
- 是的, 大部分只用1個, 稱為 main working tree; 但可以有多個!
- 其實, 每個 working tree 一定會有 working directory, 因為是同一個資料夾內, 不同時點專案內容
- working tree 簡單來說, 就是由 HEAD 所展開的專案副本
- 若 working tree 的內容, 與 working directory 的內容相同, 就是 clean